/**
 * 
 */
package com.enjoyor.soa.traffic.api.service.dubbo.ovms;

import java.util.List;
import java.util.Map;

import com.enjoyor.soa.traffic.api.dto.ovms.DeptBlockDto;
import com.enjoyor.soa.traffic.api.dto.ovms.LogUserDto;
import com.enjoyor.soa.traffic.util.pojo.Page;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

/**
 * @author ly 部门路段
 */
public interface DubboDeptBlockService {
	/**
	 * 获取部门路段列表
	 * 
	 * @param token
	 * @param systemkey
	 * @param map
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo getDeptBlockList(String token, String systemkey, LogUserDto logUser, Map map);

	/**
	 * 获取部门路段分页
	 * 
	 * @param token
	 * @param systemkey
	 * @param map
	 * @param page
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public ResultPojo getDeptBlockPage(String token, String systemkey, LogUserDto logUser, Map map, Page page);

	/**
	 * 删除部门路段
	 * 
	 * @param token
	 * @param systemkey
	 * @param record_id
	 *            记录编号
	 * @param dept_id
	 *            部门编号，记录编号为空时传
	 * @param block_id
	 *            路段编号，需要部门编号不为空
	 * @return
	 */
	public ResultPojo deleteDeptBlock(String token, String systemkey, LogUserDto logUser, String record_id,
			String dept_id, String block_id);

	/**
	 * 新增部门路段
	 * 
	 * @param token
	 * @param systemkey
	 * @param deptblock
	 * @return
	 */
	public ResultPojo insertDeptBlock(String token, String systemkey, LogUserDto logUser, DeptBlockDto deptblock);

	/**
	 * 批量新增部门路段
	 * 
	 * @param token
	 * @param systemkey
	 * @param list
	 * @return
	 */
	public ResultPojo insertDeptBlockList(String token, String systemkey, LogUserDto logUser, List<DeptBlockDto> list);

	/**
	 * 更新部门路段
	 * 
	 * @param token
	 * @param systemkey
	 * @param deptblock
	 * @return
	 */
	public ResultPojo updateDeptBlock(String token, String systemkey, LogUserDto logUser, DeptBlockDto deptblock);
}
